/**
 * 
 */
package com.gsmr.service;

import java.util.List;
import java.util.Map;

import com.gsmr.entity.*;
import org.springframework.stereotype.Component;

/**
 * @author dell
 *
 */
@Component
public interface InterferenceQueryService {
	/**
	 * 获取目前gsmr数据库中存在的前置机
	 */
	public List<Integer> get_fs_front_ids(Map map);

	/**
	 * 根据条件获取干扰占用度集合
	 */

    public List<InterfaceOccupy> findByOccupy(Map map);
	/**
	 * 获取前置机的名称
	 */
	public String get_bs_name(Map map);
	/**
	 * 获取目前存在干扰记录的最小时间
	 */
	public Long get_min_time_begin(Map map);
	/**
	 * 获取目前存在干扰记录的最大时间
	 */
    public Long get_max_time_end(Map map);
    /**
	 * 获取时间范围内存在的干扰记录
	 */
    public List<Interference> get_interference_new(Map map);
    /**
	 * 根据条件查询干扰集合
	 */
	public List<Interference> find(Map map);
	/**
	 * 获取总记录数
	 */
	public Long getTotal(Map map);

	/**
	 * 获取干扰度总记录数
	 */
	public Long getOccupyTotal(Map map);
	/**
	 * 获取干扰告警
	 */
	public List<AlarmHistory> findalarmhistory(Map map);
	/**
	 * 获取告警总记录数
	 */
	public Long getTotalalarmhistory(Map<String,Object> map);
	public List<InfConfig> get_Status(Map map);
	public int changeDB(Map map);
	public int saveinfconfig(Map map);
	public int savealarmconfig(Map map);
	public List<InfMeasurement> findmeasurement(Map map);
	public Long getTotalinfmeasurement(Map map);
	public List<BSModel> findbsmodel(Map map);
	public List<InfFrequencySpectrum> findfs(Map map);
	public List<InfFrequencySpectrum> findmorethanfs(Map map);
	public List<InfFrequencySpectrum> findlessthanfs(Map map);
	public String get_bcch(Map map);
	public String get_tch1(Map map);
	public String get_tch2(Map map);
	public String get_tch3(Map map);
	public String get_lac(Map map);
	public String get_ci(Map map);
	public int get_largedate(Map map);
	public long get_latestFSTime(Map map);
	public int get_earlydate(Map map);
	public long get_earlyFSTime(Map map);
	public String get_frontId(Map map);
	public List<FScan> getFScan(Map map);
	public List<InfFrequencySpectrum> findfsmonitor(Map map); //频谱监控
	public List<Interference> findresult(Map map);
	public int updatealarmhistory(Map map);  //标记为已处理
	public int updateinterference_new(Map map);  //标记为已处理
	public BS_info getbsinfo(Map map);
	public List<BS_station> getbsstation(Map map);
	public int createModel(Map map);  //建模函数
	public int cancelModel(Map map);  //建模函数
	public int replaceModelBusyUp(Map map);  //建模函数
	public int replaceModelBusyDown(Map map);  //建模函数
	public int replaceModelLeisureUp(Map map);  //建模函数
	public int replaceModelLeisureDown(Map map);  //建模函数
	public int insertHistorySource(InfHistorySource historySource);
	
	public int insertHistoryInterference(Interference interference); // 新增历史干扰告警
	
	public List<InfHistorySource> findinfhistorysource(Map map);
	public int getTotalinfhistorysource(Map map);
	public List<RS_station> getrsstation(Map map); // 获取车站经纬度
	public List<Interference> getInterference(Map map);// 获取干扰
	public List<InfHistorySource> getInfHistorySource(Map map);// 获取干扰
	public List<Integer> getInterferenceCondition();// 获取有干扰的前置机号
	public Integer findTotalCount(Map<String, Object> map);
	public InfFrequencySpectrum findOffset(Map<String, Object> map);
	
	/**
	 * 查询rxlev数据
	 */
	public List<FscanRxlev> findFscanRxlev(Map<String, Object> map);
	
	/**
	 * 查询fscan表的数据
	 */
	public List<FScan> findFscanCount(Map<String, Object> map);
	
	/**
	 * 删除历史干扰源数据
	 */
	public int delete(Map<String, Object> map);
	
	/**
	 * 更新inf_history_source表
	 */
	public int updateInfHistorySource(Map<String, Object>map );
	
	public List<String> findFscanTableNames(Map<String, Object> map);
}
